package org.concepts.algorithm.datastructure;

/**
 * Tree object consists of nodes that can store object of type V.
 * 
 * @author vvvv
 * 
 */
public interface Tree<V> {

  /**
   * 
   * @param node
   */
  public void setRootNode(Node<V> node);

  /**
   * Returns the rot node of the tree. Can be null if the user never set it
   * using {@link #setRootNode(Node)}.
   * 
   * @return
   */
  public Node<V> getRootNode();

  /**
   * Returns true if the Tree contains a node with the specified value.
   * 
   * @param id
   * @return
   */
  public boolean contains(Object value);

}
